﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Htse.Blue.Models;
using System.Web.Security;

namespace Htse.Blue.Logic
{
	public interface IMembershipService
	{
		int MinPasswordLength { get; }

		bool ValidateUser(string userName, string password);
		MembershipCreateStatus CreateUser(string userName, string password, string email);
		bool ChangePassword(string userName, string oldPassword, string newPassword);
		PagedList<MembershipUser> ListUsers(int? page, int pageSize, string sortingParameter);
		IQueryable<string> ListAllUserNames();
		bool DeleteUser(string userName);

		IQueryable<string> GetAllRoles();
		void AddUserToRole(string userName, string roleName);
	}
}
